home *** CD-ROM | disk | FTP | other *** search
/ Turnbull China Bikeride / Turnbull China Bikeride - Disc 1.iso / ARGONET / PD / GRAPHICS / POV302.ZIP / pov302 / pov3demo / other / pov / shear3 < prev    next >
Text File  |  1995-11-08  |  5KB  |  259 lines

  1. // Persistence Of Vision raytracer version 3.0 sample file.
  2. // Persistence Of Vision raytracer version 3.0 sample file.
  3. // This scenes shows how to do shear with the matrix transformation.
  4.  
  5. #version 3.0
  6. global_settings { assumed_gamma 2.2 }
  7.  
  8. #include "colors.inc"
  9.  
  10. #declare Col1 = -7.5
  11. #declare Col2 = -4.5
  12. #declare Col3 = -1.5
  13. #declare Col4 = +1.5
  14. #declare Col5 = +4.5
  15. #declare Col6 = +7.5
  16.  
  17. #declare Row1 =  5
  18. #declare Row2 =  0
  19. #declare Row3 = -5
  20.  
  21. camera {
  22.   orthographic
  23.   location <25, 25, -50>
  24.   right 15 * 4/3 *x
  25.   up 15 * y
  26.   look_at  <0, 0, 0>
  27. }
  28.  
  29. light_source { <200, 200, -200> color rgb <1,1,1> }
  30.  
  31. //
  32. // Use aloved famous raytrace green/yellow checkered wall
  33. //
  34.  
  35. plane { z, 2
  36.    pigment {
  37.       checker colour Yellow colour Green
  38.       scale 2
  39.    }
  40.    finish {
  41.       ambient 0.2
  42.       diffuse 0.8
  43.    }
  44. }
  45.  
  46. //
  47. // Declare object to use.
  48. //
  49.  
  50. #declare Thing = box { -1, 1 pigment { color Red } }
  51.  
  52. //
  53. // Declare basic texture.
  54. //
  55.  
  56. #declare Texture = texture {
  57.   pigment {
  58.     checker colour Red colour Blue
  59.     scale 1
  60.   }
  61.   finish {
  62.     ambient 0.2
  63.     diffuse 0.8
  64.   }
  65. }
  66.  
  67. //
  68. // Define textures sheared in positive x direction.
  69. //
  70.  
  71. #declare Texture01 = texture {
  72.   Texture
  73.   matrix <  1,  0,  0,   
  74.             0,  1,  0,    
  75.             0,  0,  1,    
  76.             0,  0,  0 >
  77. }
  78.  
  79. #declare Texture02 = texture {
  80.   Texture
  81.   matrix <   1,  0,  0,   
  82.            0.2,  1,  0,    
  83.              0,  0,  1,    
  84.              0,  0,  0 >
  85. }
  86.  
  87. #declare Texture03 = texture {
  88.   Texture
  89.   matrix <   1,  0,  0,   
  90.            0.4,  1,  0,    
  91.              0,  0,  1,    
  92.              0,  0,  0 >
  93. }
  94.  
  95. #declare Texture04 = texture {
  96.   Texture
  97.   matrix <   1,  0,  0,   
  98.            0.6,  1,  0,    
  99.              0,  0,  1,    
  100.              0,  0,  0 >
  101. }
  102.  
  103. #declare Texture05 = texture {
  104.   Texture
  105.   matrix <   1,  0,  0,   
  106.            0.8,  1,  0,    
  107.              0,  0,  1,    
  108.              0,  0,  0 >
  109. }
  110.  
  111. #declare Texture06 = texture {
  112.   Texture
  113.   matrix <   1,  0,  0,   
  114.              1,  1,  0,    
  115.              0,  0,  1,    
  116.              0,  0,  0 >
  117. }
  118.  
  119. //
  120. // Define textures sheared in positive y direction.
  121. //
  122.  
  123. #declare Texture07 = texture {
  124.   Texture
  125.   matrix <  1,   0,  0,   
  126.             0,   1,  0,    
  127.             0,   0,  1,    
  128.             0,   0,  0 >
  129. }
  130.  
  131. #declare Texture08 = texture {
  132.   Texture
  133.   matrix <  1, 0.2,  0,   
  134.             0,   1,  0,    
  135.             0,   0,  1,    
  136.             0,   0,  0 >
  137. }
  138.  
  139. #declare Texture09 = texture {
  140.   Texture
  141.   matrix <  1, 0.4,  0,   
  142.             0,   1,  0,    
  143.             0,   0,  1,    
  144.             0,   0,  0 >
  145. }
  146.  
  147. #declare Texture10 = texture {
  148.   Texture
  149.   matrix <  1, 0.6,  0,   
  150.             0,   1,  0,    
  151.             0,   0,  1,    
  152.             0,   0,  0 >
  153. }
  154.  
  155. #declare Texture11 = texture {
  156.   Texture
  157.   matrix <  1, 0.8,  0,   
  158.             0,   1,  0,    
  159.             0,   0,  1,    
  160.             0,   0,  0 >
  161. }
  162.  
  163. #declare Texture12 = texture {
  164.   Texture
  165.   matrix <  1,   1,  0,   
  166.             0,   1,  0,    
  167.             0,   0,  1,    
  168.             0,   0,  0 >
  169. }
  170.  
  171. //
  172. // Define textures sheared in positive z direction.
  173. //
  174.  
  175. #declare Texture13 = texture {
  176.   Texture
  177.   matrix <   1,  0,  0,   
  178.              0,  1,  0,    
  179.              0,  0,  1,    
  180.              0,  0,  0 >
  181. }
  182.  
  183. #declare Texture14 = texture {
  184.   Texture
  185.   matrix <   1,  0,  0,   
  186.              0,  1,  0,    
  187.            0.2,  0,  1,    
  188.              0,  0,  0 >
  189. }
  190.  
  191. #declare Texture15 = texture {
  192.   Texture
  193.   matrix <   1,  0,  0,   
  194.              0,  1,  0,    
  195.            0.4,  0,  1,    
  196.              0,  0,  0 >
  197. }
  198.  
  199. #declare Texture16 = texture {
  200.   Texture
  201.   matrix <   1,  0,  0,   
  202.              0,  1,  0,    
  203.            0.6,  0,  1,    
  204.              0,  0,  0 >
  205. }
  206.  
  207. #declare Texture17 = texture {
  208.   Texture
  209.   matrix <   1,  0,  0,   
  210.              0,  1,  0,    
  211.            0.8,  0,  1,    
  212.              0,  0,  0 >
  213. }
  214.  
  215. #declare Texture18 = texture {
  216.   Texture
  217.   matrix <   1,  0,  0,   
  218.              0,  1,  0,    
  219.              1,  0,  1,    
  220.              0,  0,  0 >
  221. }
  222.  
  223. object { Thing translate <Col1, Row1, 0> texture { Texture01 } }
  224.  
  225. object { Thing translate <Col2, Row1, 0> texture { Texture02 } }
  226.  
  227. object { Thing translate <Col3, Row1, 0> texture { Texture03 } }
  228.  
  229. object { Thing translate <Col4, Row1, 0> texture { Texture04 } }
  230.  
  231. object { Thing translate <Col5, Row1, 0> texture { Texture05 } }
  232.  
  233. object { Thing translate <Col6, Row1, 0> texture { Texture06 } }
  234.  
  235. object { Thing translate <Col1, Row2, 0> texture { Texture07 } }
  236.  
  237. object { Thing translate <Col2, Row2, 0> texture { Texture08 } }
  238.  
  239. object { Thing translate <Col3, Row2, 0> texture { Texture09 } }
  240.  
  241. object { Thing translate <Col4, Row2, 0> texture { Texture10 } }
  242.  
  243. object { Thing translate <Col5, Row2, 0> texture { Texture11 } }
  244.  
  245. object { Thing translate <Col6, Row2, 0> texture { Texture12 } }
  246.  
  247. object { Thing translate <Col1, Row3, 0> texture { Texture13 } }
  248.  
  249. object { Thing translate <Col2, Row3, 0> texture { Texture14 } }
  250.  
  251. object { Thing translate <Col3, Row3, 0> texture { Texture15 } }
  252.  
  253. object { Thing translate <Col4, Row3, 0> texture { Texture16 } }
  254.  
  255. object { Thing translate <Col5, Row3, 0> texture { Texture17 } }
  256.  
  257. object { Thing translate <Col6, Row3, 0> texture { Texture18 } }
  258.  
  259.